package org.jeecg.modules.demo3.fly.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;

import org.jeecg.modules.demo3.fly.entity.AxhkYwAgrplane;

import java.util.Date;
import java.util.List;
import java.util.Map;

/**
 * @Description: 无人机管理表
 * @Author: jeecg-boot
 * @Date:   2021-01-28
 * @Version: V1.0
 */
public interface  AxhkYwAgrplaneMapper extends BaseMapper<AxhkYwAgrplane> {

    //通过作业Id查询，作业下的农机-wjn
    List<Map<String,Object>> getByWorkId(String id);

    //通过无人机序列号查询无人机是否存在-wjn
    String getByserialNumber(int serialNumber);

    //将查询到的无人机进行添加
    int addAgrplane(@Param("workId")String workId,@Param("agrplaneId")String agrplaneId);

    //根据ID删除-wjn
    int getByPlaneId(Integer id);

    //根据APP传输的 agrplane_id,user_id 修改无人机管理
    int getUpdateAgrplane(String agrplaneId,String userName,String userDeparts,String userId,String departCode);

    //根据用户id查询用户名
    String getUserName(String userId);

    //通过用户 id查询 用户所在的用户组
    Map<String,String> getDepartName(String userId);

    //通过 无人机管理查看下面是否有用户
    String getByUserName(String agrplaneId);

    //根据无人机激活状态改变 激活时间
    int getUpdateTime(String times, int number);

    /*
    * 查看 所有设备 进行列举
    * */
    List<AxhkYwAgrplane> getAxhkYwAgrplanes();

    /*
    * 根据id查看设备大幅度发鬼地方地方发
    * int serialNumber 设备序列号
    * */
    AxhkYwAgrplane getAllAxhkYwAgrplane(int serialNumber);

    /*
    * 通过 设备id修改设备信息--user_deparet
    * int serialNumber 设备序列号
    * String user_departs 队伍名称
    * */
    int getUpdatePlane(int serialNumber,String userDeparts);

    /*
     * 通过 设备id修改设备信息--user_name  user_id
     * int serialNumber 设备序列号
     * String user_name 用户名称
     * String user_id 用户id
     * */
    int getUpdatePlane2(int serialNumber,String userName,String userId,int connStatus);

    /*
    * 当移除设备时 修改信息
    * int serialNumber 设备序列号
    * String user_departs 队伍名称
    * String user_name 用户名称
    * String user_id 用户id
    * */
    int getUpdatePlane3(int serialNumber,String userDeparts,String userName,String userId,int connStatus);

    /*
    * 飞机 连接tcp有数据传输 将state状态 改为在线
    * */
    int getUpdateState(int serialNumber,int state);

    /*
    * 手机APP 连接tcp有数据传输 将astate状态 改为在线
    * */
    int getUpdateAstate(int serialNumber,int astate,int connStatus);

    /*
    * String fName
    * String uId
    *  根据群名跟用户id 查询该群下的所有设备
    * */
    List<AxhkYwAgrplane> getSelectPlane(String fName,String uId);
}
